"""myjdango URL Configuration

The `urlpatterns` list routes URLs to views. For more information please see:
    https://docs.djangoproject.com/en/4.1/topics/http/urls/
Examples:
Function views
    1. Add an import:  from my_app import views
    2. Add a URL to urlpatterns:  path('', views.home, name='home')
Class-based views
    1. Add an import:  from other_app.views import Home
    2. Add a URL to urlpatterns:  path('', Home.as_view(), name='home')
Including another URLconf
    1. Import the include() function: from django.urls import include, path
    2. Add a URL to urlpatterns:  path('blog/', include('blog.urls'))
"""
#引入django框架contrib模块中admin类，响应给客户端看
from django.contrib import admin

#从当前文件夹中导入look文件
from . import look

#引入django框架中urls模块中的path函数，将路由和响应数据 匹配
from django.urls import path, re_path

'''path语法
    path(route,views,name=None)
    参数：
        route：字符串类型，匹配的请求路径
        views：指定路径所对应的视图处理函数的名称，不加括号
        name：为地址起别名，在模板中地址反向解析时使用
        
    path转换器
    语法
    <转换器类型：自定义名>
    类型 
    str  匹配除了’/‘之外的非空字符串
        例子’v1/users/<str:username>‘匹配  /v1/users/liuhujun
    int 
    
    slug 匹配任意由ASCLL字母或数字以及连字符和下划线组成的短标签
        ’detail/<slug:sl>‘匹配 /detail/this-is-django
    path 匹配非空字符串，包括路径分隔符 'v1/users/<path:ph>' 匹配 /v1/users/a/b/c
    作用：若转换器类型匹配到对应类型的数据，则将数据按照关键字传参的方式传递给试图函数
    例子：path('page/<int:page>',views.xxx)
    
    
    路由配置 - re_path()
        在url的匹配过程中的可以使用正则表达式进行精确匹配
    语法
        re_path(reg,view,name=xxx)
        正则表达式为命名分组模式(?p<name>pattern);
        匹配提取参数后用关键字传参方式传递试图函数
        括号代表分组，name为分组命名，pattern就是正则表达式
        
    例子
        可匹配 http://127.0.0.1:8080/20/add/40
        不可匹配 http//127.0.0.1:8080/200/add/400
'''


#设置路由的列表，保存所有的路由
urlpatterns = [
    path('admin/', admin.site.urls),
    path('look/',look.hw),
    # path('index/',look.index),
    path('login/',look.login),
    path('logout/',look.logout),
    path('index/',look.date),
    path('nav/',look.getnav),
    path('register/',look.register),
    path('content/',look.content_type),
    path('myshopcar/',look.show_myshopcar),



    #re_path(r'^(?p\\<x>\d{1,2}\)/(?p<op>\w+\)/(?p<y>\d{1,2}\)$',look.cal_view)
]
